#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void allocateSpace(int **temp)
{
    int *arr = malloc(sizeof(int)*10);
    for (int i = 0; i < 10; i++){
        arr[i] = i + 1;
    }

    //指针间接赋值
    *temp = arr;
}

void printArray(int *arr, int len)
{
    for (int i = 0; i < len; i++){
        printf("%d ", arr[i]);
    }
    printf("\n");
}

void freeSpace(void *arr)
{
    if(arr == NULL){
        return;
    }
    free(arr);
    arr = NULL;
}

void test01()
{
    int *pArray = NULL;
    allocateSpace(&pArray);
    printArray(pArray, 10);
    freeSpace(pArray);
    pArray = NULL;
    
}

int main()
{
    test01();
    return 0;
}